<?php


namespace app\models\response;


use app\models\BaseDto;

class RespUserDetail extends  BaseDto
{

    private $userId;
    private $username;
    private $email;
    private $mobile;
    private $status;
    private $createUserId;
    private $createTime;
    private $password;
    /**
     * @var RespRoleDetail[]
     */
    private $sysRoleDTOList;

    /**
     * @return mixed
     */
    public function getUserId()
    {
        return $this->userId;
    }

    /**
     * @param mixed $userId
     */
    public function setUserId($userId)
    {
        $this->userId = $userId;
    }

    /**
     * @return mixed
     */
    public function getUsername()
    {
        return $this->username;
    }

    /**
     * @param mixed $username
     */
    public function setUsername($username)
    {
        $this->username = $username;
    }

    /**
     * @return mixed
     */
    public function getEmail()
    {
        return $this->email;
    }

    /**
     * @param mixed $email
     */
    public function setEmail($email)
    {
        $this->email = $email;
    }

    /**
     * @return mixed
     */
    public function getMobile()
    {
        return $this->mobile;
    }

    /**
     * @param mixed $mobile
     */
    public function setMobile($mobile)
    {
        $this->mobile = $mobile;
    }

    /**
     * @return mixed
     */
    public function getStatus()
    {
        return $this->status;
    }

    /**
     * @param mixed $status
     */
    public function setStatus($status)
    {
        $this->status = $status;
    }

    /**
     * @return mixed
     */
    public function getCreateUserId()
    {
        return $this->createUserId;
    }

    /**
     * @param mixed $createUserId
     */
    public function setCreateUserId($createUserId)
    {
        $this->createUserId = $createUserId;
    }

    /**
     * @return mixed
     */
    public function getCreateTime()
    {
        return $this->createTime;
    }

    /**
     * @param mixed $createTime
     */
    public function setCreateTime($createTime)
    {
        $this->createTime = $createTime;
    }

    /**
     * @return RespRoleDetail[]
     */
    public function getSysRoleDTOList()
    {
        return $this->sysRoleDTOList;
    }

    /**
     * @param RespRoleDetail[] $sysRoleDTOList
     */
    public function setSysRoleDTOList($sysRoleDTOList)
    {
        $this->sysRoleDTOList = $sysRoleDTOList;
    }

    /**
     * @return mixed
     */
    public function getPassword()
    {
        return $this->password;
    }

    /**
     * @param mixed $password
     */
    public function setPassword($password)
    {
        $this->password = $password;
    }


    /**
     * @return array|mixed|void
     */
    public function jsonSerialize()
    {
        return [
            "userId"=>(string)$this->getUserId(),
            "username"=>$this->getUsername(),
            "email"=>$this->getEmail(),
            "mobile"=>$this->getMobile(),
            "status"=>$this->getStatus(),
            "createUserId"=>$this->getCreateUserId(),
            "createTime"=>$this->getCreateTime(),
            "sysRoleDTOList"=>$this->getSysRoleDTOList(),
            "password"=>$this->getPassword()
        ];
    }






}